﻿CREATE PROCEDURE [Cucina].[SP_Comanda_I]
	@ComandaID int output,
	@CodiceComanda nvarchar(20) output,
	@OrdineID uniqueidentifier,
	@PuntoDistribuzioneID int,
	@TavoloAssegnato nvarchar(20),
	@Note nvarchar(MAX),
	@Sconto decimal(10,2),
	@DataOra datetime,
	@Autore nvarchar(200),
	@IsCheckInRichiesto bit,
	@IsStampaRemotaRichiesta bit,
	@IsConsegnaRichiesta bit,
	@TimeStampMinCheckIn datetime
AS
	INSERT INTO [Cucina].[Comanda]
		   ([OrdineID]
		   ,[PuntoDistribuzioneID]
		   ,[TavoloAssegnato]
		   ,[CodiceComanda]
		   ,[Note]
		   ,[Sconto]
		   ,[DataOra]
		   ,[Autore]
		   ,[IsCheckInRichiesto]
		   ,[IsStampaRemotaRichiesta]
		   ,[IsConsegnaRichiesta]
		   ,[TimeStampMinCheckIn])
	 VALUES
		   (@OrdineID
		   ,@PuntoDistribuzioneID
		   ,@TavoloAssegnato
		   ,'N/A'
		   ,@Note
		   ,@Sconto
		   ,@DataOra
		   ,@Autore
		   ,@IsCheckInRichiesto
		   ,@IsStampaRemotaRichiesta
		   ,@IsConsegnaRichiesta
		   ,@TimeStampMinCheckIn)

	SET @ComandaID = SCOPE_IDENTITY()

	-- Determinazione del codice comanda
	SET @CodiceComanda = [Cucina].[SF_GetCodiceComanda](@PuntoDistribuzioneID, @DataOra)
	
	UPDATE [Cucina].[Comanda]
	SET CodiceComanda = @CodiceComanda
	WHERE ComandaID = @ComandaID
RETURN 0